<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <!-- 
        如何形成闭包?
        在函数A中定义函数B
        函数B使用函数A的变量,并返回函数B
        即可形成闭包

        闭包的好处:
            * 可使的变量的生命周期得到延长
        
        闭包的坏处:
            * 由于生命周期得到延长,内存不能及时的释放变量
            
     -->


    <script>
        function outer(){
            var count = 0;
            function inner(){
                count++;
                console.log(count);
            }

            return inner;
        }

        var demo = outer();
        console.log(demo);

        demo();
        demo();
        count = 100;
        demo();
    </script>
</body>
</html>